package com.spring.beans.factory;

import com.spring.beans.BeansException;
import com.spring.beans.factory.config.AutowireCapableBeanFactory;
import com.spring.beans.factory.config.BeanDefinition;
import com.spring.beans.factory.config.BeanPostProcessor;
import com.spring.beans.factory.config.ConfigurableBeanFactory;

/**
 * @Description: This is a sample class.
 * @Author: Simon
 */
public interface ConfigurableListBeanFactory extends ListableBeanFactory, AutowireCapableBeanFactory,
        ConfigurableBeanFactory {

    //根据名词查找BeanDefinition
    BeanDefinition getBeanDefinition(String beanName) throws BeansException;


    void preInstantiateSingletons() throws BeansException;

    void addBeanPostProcessor(BeanPostProcessor beanPostProcessor);
}
